package com.vegetable.modules.entity.stock.to;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 * <p>
 * 成本单价变化查询参数传输对象
 * </p>
 *
 * @author wangruijie
 * @since 2024-03-21
 */
@Data
@ApiModel(value="成本单价变化查询参数", description="成本单价变化查询参数")
public class CostWeightChangeQueryTO {

    @ApiModelProperty(value = "当前页码")
    private Integer page = 1;

    @ApiModelProperty(value = "每页条数")
    private Integer limit = 10;

    @ApiModelProperty(value = "商品ID")
    private Long commodityId;

    @ApiModelProperty(value = "商品名称")
    private String commodityName;

    @ApiModelProperty(value = "库存ID")
    private Long stockId;

    @ApiModelProperty(value = "变化源头类型：1-订单价格修改，2-入库调整，3-费用分摊，4-重新包装")
    private Integer sourceType;

    @ApiModelProperty(value = "操作人姓名")
    private String operatorName;

    @ApiModelProperty(value = "开始时间")
    private Date startTime;

    @ApiModelProperty(value = "结束时间")
    private Date endTime;

    @ApiModelProperty(value = "最小变化差值")
    private BigDecimal minChangeAmount;

    @ApiModelProperty(value = "最大变化差值")
    private BigDecimal maxChangeAmount;
    
    @ApiModelProperty(value = "源头订单ID")
    private Long sourceOrderId;
    
    @ApiModelProperty(value = "是否只查询连锁变化")
    private Boolean chainChangesOnly = false;
    
    @ApiModelProperty(value = "变化方向：1-增加，-1-减少，0-无变化")
    private Integer changeDirection;
    
    @ApiModelProperty(value = "最小变化百分比")
    private BigDecimal minChangePercentage;
    
    @ApiModelProperty(value = "最大变化百分比")
    private BigDecimal maxChangePercentage;
}